package com.ruoyi.project.infoBaseProjectStatist.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 项目数据统计对象 info_base_project_statist
 *
 * @author ruoyi
 * @date 2022-03-18
 */
public class InfoBaseProjectStatist extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Long id;

    /**
     * 项目库中项目id
     */
    @Excel(name = "项目库中项目id")
    private Long baseProjectId;

    /**
     * 项目库父项目id 为空是父项目  不为空就是子项目
     */
    @Excel(name = "项目库父项目id 为空是父项目  不为空就是子项目")
    private Long baseProjectParentId;

    /**
     * 项目名称
     */
    @Excel(name = "项目名称")
    private String baseProjectName;

    /**
     * 组织机构 县、区 id
     */
    @Excel(name = "组织机构 县、区 id")
    private Long deptId;

    /**
     * 组织机构 县、区 名称
     */
    @Excel(name = "组织机构 县、区 名称")
    private String deptName;

    /**
     * 资金总额
     */
    @Excel(name = "资金总额")
    private BigDecimal totalFunds;

    /**
     * 中央资金
     */
    @Excel(name = "中央资金")
    private BigDecimal centralFund;

    /**
     * 省级资金
     */
    @Excel(name = "省级资金")
    private BigDecimal provincialFunds;

    /** 其他资金*/
    @Excel(name = "其他资金")
    private BigDecimal otherFund;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createByTime;

    private Integer xmmccount;
    private BigDecimal totalcount;
    private BigDecimal cencount;
    private BigDecimal procount;
    private BigDecimal othercount;

    private List<InfoBaseProjectStatist> infoBaseProjectStatists;

    public List<InfoBaseProjectStatist> getInfoBaseProjectStatists() {
        return infoBaseProjectStatists;
    }

    public void setInfoBaseProjectStatists(List<InfoBaseProjectStatist> infoBaseProjectStatists) {
        this.infoBaseProjectStatists = infoBaseProjectStatists;
    }

    public Integer getXmmccount() {
        return xmmccount;
    }

    public void setXmmccount(Integer xmmccount) {
        this.xmmccount = xmmccount;
    }

    public BigDecimal getTotalcount() {
        return totalcount;
    }

    public void setTotalcount(BigDecimal totalcount) {
        this.totalcount = totalcount;
    }

    public BigDecimal getCencount() {
        return cencount;
    }

    public void setCencount(BigDecimal cencount) {
        this.cencount = cencount;
    }

    public BigDecimal getProcount() {
        return procount;
    }

    public void setProcount(BigDecimal procount) {
        this.procount = procount;
    }

    public BigDecimal getOthercount() {
        return othercount;
    }

    public void setOthercount(BigDecimal othercount) {
        this.othercount = othercount;
    }

    public BigDecimal getOtherFund() {
        return otherFund;
    }

    public void setOtherFund(BigDecimal otherFund) {
        this.otherFund = otherFund;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setBaseProjectId(Long baseProjectId) {
        this.baseProjectId = baseProjectId;
    }

    public Long getBaseProjectId() {
        return baseProjectId;
    }

    public void setBaseProjectParentId(Long baseProjectParentId) {
        this.baseProjectParentId = baseProjectParentId;
    }

    public Long getBaseProjectParentId() {
        return baseProjectParentId;
    }

    public void setBaseProjectName(String baseProjectName) {
        this.baseProjectName = baseProjectName;
    }

    public String getBaseProjectName() {
        return baseProjectName;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    public Long getDeptId() {
        return deptId;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    public String getDeptName() {
        return deptName;
    }

    public void setTotalFunds(BigDecimal totalFunds) {
        this.totalFunds = totalFunds;
    }

    public BigDecimal getTotalFunds() {
        return totalFunds;
    }

    public void setCentralFund(BigDecimal centralFund) {
        this.centralFund = centralFund;
    }

    public BigDecimal getCentralFund() {
        return centralFund;
    }

    public void setProvincialFunds(BigDecimal provincialFunds) {
        this.provincialFunds = provincialFunds;
    }

    public BigDecimal getProvincialFunds() {
        return provincialFunds;
    }

    public void setCreateByTime(Date createByTime) {
        this.createByTime = createByTime;
    }

    public Date getCreateByTime() {
        return createByTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("baseProjectId", getBaseProjectId())
                .append("baseProjectParentId", getBaseProjectParentId())
                .append("baseProjectName", getBaseProjectName())
                .append("deptId", getDeptId())
                .append("deptName", getDeptName())
                .append("totalFunds", getTotalFunds())
                .append("centralFund", getCentralFund())
                .append("provincialFunds", getProvincialFunds())
                .append("createByTime", getCreateByTime())
                .append("otherFund", getOtherFund())
                .toString();
    }
}
